The present invention relates to packet data communications, and in particular, to a method and apparatus for both reliable and efficient packet data communications.
Data packet communications are typically xe2x80x9cbest effortxe2x80x9d packet delivery systems. Best effort delivery makes an earnest attempt to deliver the packets, i.e., it does not discard them capriciously. Indeed, data packet services are typically called unreliable because the delivery is not guaranteed, i.e., packets may be lost, duplicated, delayed, or delivered out of order.
Nevertheless, many data communications applications require or at least benefit from a greater degree of reliability. One way of increasing the reliability of transmission is for two communications units to exchange an acknowledgment message so they know if and when a particular message has been transferred successfully. A protocol that uses positive and/or negative acknowledgments with retransmission techniques to increase reliability is typically referred to as automatic repeat request (ARQ). A transmitter sends data units to a receiver. The receiver replies by sending back to the transmitter a positive acknowledgment if a data unit is properly received. A negative acknowledgment is sent if a data unit is not properly received, i.e., a data unit received with errors (or at least too many errors to correct efficiently) or a data unit simply not received. In a negative acknowledgment situation, the receiver then sends a request to the transmitter to retransmit those data units that were not properly received.
Packets may include some type of polling or status inquiry field. If the transmitter sends a polling request to the receiver by setting one or more bits in the polling field, the receiver upon receiving the poll request sends receiver status information to the transmitter, e.g., an acknowledgment that packet was properly received.
As noted above, data packet services are typically unreliable and packets may be considerably delayed or even lost. In these situations, there is a considerable time period before this packet delay or packet loss is detected by the transmitter. Once this is detected, the transmitter must belatedly retransmit that packet. All of this results in significant delays in transmission, and ultimately, a lower effective data throughput.
It is an object of the present invention to overcome these problems by providing more reliable but still efficient packet data communications.
It is another object of the present invention to provide this increased reliability without adding additional complexity or overhead to the data packet transmissions.
It is another object of the invention to increase the reliability of data communications using one or more data bits, and if possible, one or more data fields in data packets which carry no, little, or obsolete information.
The present invention improves the reliability of data communication by analyzing plural data units in a group or a block rather than analyzing individual data units. For example, at the time that a transmitter desires or needs to send a polling request to a receiver, there may be more than one data unit available for delivery as a group. All of the polling fields of the data units in this group are set to indicate a poll request. When the receiver receives this group of data units, it sends the requested status information to the transmitter if the polling field of at least one of the received data units in the group indicates a poll request. Even if the polling field of plural ones of the data units in the group indicates a polling request, the receiver sends the requested status information only once.
Rather than not using the polling fields of the other data units in the group, which is effectively wasted bandwidth, the present invention employs those other polling fields to increase the reliability of the transmission. This improved reliability results in decreased transmission delay from the transmitter to the receiver. Further, the additional polling fields (or other additional fields) may be used to detect or otherwise correct errors that would otherwise be undetected or uncorrectable if only a single data unit were processed individually.
A preferred example embodiment of the present invention is disclosed in the context of a wideband code division multiple access (WCDMA) radio communications system. In this example, the invention is carried out in an automatic repeat and request technique implemented at a radio link control (RLC) communications protocol layer. This invention is particularly advantageous in this environment because packet data transmissions over a radio channel are susceptible to fading, dispersion, and noise making the enhanced reliability provided by the present invention particularly advantageous.
The invention is also generally applicable to PDU fields other than polling fields. The transmitter reliably and efficiently ensures the receiver accurately receives particular information by sending that information in an otherwise unused PDU field of plural PDUs transmitted as a group. The likelihood that the receiver will properly receive the particular information from at least one of the PDUs in the group is quite high. Since the information occupies what would have been otherwise one or more unused PDU fields, the redundancy and increased reliability do not add further xe2x80x9ccostxe2x80x9d to the transmission.